from PyQt5.QtCore import Qt
from PyQt5.QtWidgets import QGridLayout, QLabel

from comp_cab_setup_modules.config import version
from comp_cab_setup_modules.system import CompKabSolutionWindow

help_body = f"""<b>Инструменты организации работы в компьютерном классе</b> <br> <br> Данное решение позволяет: <dl> 
<dt>ИТ-специалисту:</dt> <dd>- настроить доступ по SSH для пользователя root на компьютеры учеников;</dd> <dd>- 
настроить сетевую папку sftp для выдачи задания учителем;</dd> <dd>- установить и настроить приложение Veyon для 
управления и наблюдением за компьютерами учеников.</dd> <dt>Учителю:</dt> <dd>- удалённо собирать работы с 
компьютеров учеников;</dd> <dd>- очищать папки для сбора работ;</dd> <dd>- создавать и удалять локальную учётную 
запись ученика на компьютерах учеников;</dd> <dd>- открывать в проводнике содержимое компьютера ученика для просмотра 
и редактирования.</dd> </dl> Для работы данного решения необходимо выполнить рекомендации по первоначальной 
настройке: <ul> <li>создать локальную учётную запись с правами администратора на компьютерах учеников;</li> 
<li>компьютеры учителя и учеников должны быть объединены в одну локальную сеть, находиться в одной подсети (
рекомендуется использовать проводное LAN соединение для работы всех функций);</li> <li>внести имена компьютеров, 
пользователей и их пароли в окне настройки (Меню - Настройка) и выполнить все пункты настройки.</li> </ul> <br> 
[Версия {version}] Разработано
<a href="http://digitalcenter.moscow/">ГАУ «Центр цифровизации образования»</a>
<br> <br>
<a href="https://hub.mos.ru/mos/src/comp-cab-setup/-/blob/work_in_threads/README.md">
Открыть полную инструкцию в браузере</a><br><br>
<a href="https://it-help-school.ru/%D0%A3%D0%BF%D1%80%D0%B0%D0%B2%D0%BB%D0%B5%D0%BD%D0%B8%D0%B5_%D0%BA%D0%BE%D0%BC%D0%BF%D1%8C%D1%8E%D1%82%D0%B5%D1%80%D0%BD%D1%8B%D0%BC_%D0%BA%D0%BB%D0%B0%D1%81%D1%81%D0%BE%D0%BC#problems">
Открыть FAQ в браузере</a><br><br>
<a href="https://hub.mos.ru/mos/src/comp-cab-setup/-/blob/work_in_threads/CHANGELOG">
Открыть changelog в браузере</a>
"""


class HelpWindow(CompKabSolutionWindow):
    def __init__(self):
        super().__init__()

        grid = QGridLayout()
        self.setLayout(grid)
        self.setWindowTitle(f'Справка по настройке компьютерного кабинета')
        self.setFixedWidth(700)

        help_text = QLabel()
        help_text.setText(help_body)
        help_text.setOpenExternalLinks(True)
        help_text.setTextFormat(Qt.RichText)
        help_text.setWordWrap(True)

        grid.addWidget(help_text, 0, 0)

    def keyPressEvent(self, event):
        key = event.key()
        if key == Qt.Key_Escape:
            self.close()
